package com.smit.icastplus;

import android.content.Context;

import com.smit.dvb.CIMenuInfo;
import com.smit.dvb.CIPinInfo;
import com.smit.dvb.DVBEitInfo;
import com.smit.dvb.DVBServiceInfo;
import com.smit.dvb.DVBTimeInfo;
import com.smit.dvb.DVBTunerInfo;
import com.smit.dvb.IDVBCallback;
import com.smit.dvb.DVBService;
import com.smit.dvb.jni.DVB;

/**
 * icast plus dvb service
 */
public class ICastPlusDVBService extends DVBService {
    /**
     * 构造函数
     * @param context Android application context
     */
    public ICastPlusDVBService(Context context) {

    }

    @Override
    public int initialize() {
        int ret = DVB.getInstance().initialize();
        return ret;
    }

    @Override
    public void resume() {
        DVB.getInstance().resume();
    }

    @Override
    public void standby() {
        DVB.getInstance().standby();
    }

    @Override
    public int terminate() {
        int ret = DVB.getInstance().terminate();
        return ret;
    }


    @Override
    public void setServiceGroupId(int groupId) {
        return;
    }

    @Override
    public int getServiceGroupId() {
        return 0;
    }

    @Override
    public void restoreSettings() {
        return;
    }

    @Override
    public DVBTimeInfo getDVBTime() {
        return null;
    }

    @Override
    public DVBEitInfo getEitInfo(DVBServiceInfo serviceInfo, int type) {
        return null;
    }

    @Override
    public DVBServiceInfo[] getAllServices() {
        return new DVBServiceInfo[0];
    }

    @Override
    public int manualTune(DVBTunerInfo tunerInfo) {
        return 0;
    }

    @Override
    public void startImportServices() {

    }

    @Override
    public int importServices(DVBServiceInfo[] services, int size, int groupIndex, String groupName) {
        return 0;
    }

    @Override
    public void finishImportServices() {

    }

    @Override
    public int manualScan(DVBTunerInfo tunerInfo) {
        return 0;
    }

    @Override
    public int autoScan(int startFreq, int endFreq) {
        return 0;
    }

    @Override
    public int fullScan(int startFreq, int endFreq) {
        return 0;
    }

    @Override
    public void abortScan() {

    }

    @Override
    public int playServiceByIndex(int index) {
        return 0;
    }

    @Override
    public void stopDVBService() {

    }

    /**
     * 打开CI会话
     */
    @Override
    public void openSession() {

    }

    /**
     * 关闭CI会话
     */
    @Override
    public void closeSession() {

    }

    /**
     * 选择CI Menu选项
     *
     * @param index 选项索引
     */
    @Override
    public void selectMenuItem(int index) {

    }

    /**
     * 设置MMI密码
     *
     * @param pin 密码
     */
    @Override
    public void setPin(String pin) {

    }

    /**
     * 获取CI Menu显示信息
     *
     * @return CIMenuInfo对象
     */
    @Override
    public CIMenuInfo getCIMenuInfo() {
        return null;
    }

    /**
     * 获取CI Pin信息
     *
     * @return CIPinInfo
     */
    @Override
    public CIPinInfo getCIPinInfo() {
        return null;
    }

    @Override
    public void registerDVBCallback(IDVBCallback callback) {
    }

    @Override
    public void removeDVBCallback() {
    }
}